Only check for finalization after a grace period
authorMatthias Clasen <mclasen@redhat.com>
Fri, 3 May 2013 00:42:24 +0000 (20:42 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 3 May 2013 00:42:24 +0000 (20:42 -0400)
This makes the file chooser pass this test

gtk/tests/objects-finalize.c

index 0e5639cfb403797a6dbd0a4e902f460ffb9bd518..d113eb3d4ab420b6157222a58d77ee9f88d3615a 100644 (file)
 
 typedef GType (*GTypeGetFunc) (void);
 
+static gboolean finalized = FALSE;
+
 static gboolean
 main_loop_quit_cb (gpointer data)
 {
   gtk_main_quit ();
 
+  g_assert (finalized);
   return FALSE;
 }
 
@@ -48,7 +51,6 @@ test_finalize_object (gconstpointer data)
 {
   GType test_type = GPOINTER_TO_SIZE (data);
   GObject *object;
-  gboolean finalized = FALSE;
 
   object = g_object_new (test_type, NULL);
   g_assert (G_IS_OBJECT (object));
@@ -66,8 +68,6 @@ test_finalize_object (gconstpointer data)
   else
     g_object_unref (object);
 
-  g_assert (finalized);
-
   /* Even if the object did finalize, it may have left some dangerous stuff in the GMainContext */
   g_timeout_add (50, main_loop_quit_cb, NULL);
   gtk_main();